InSight: A Framework for Application Diagnosis using Virtual Machine Record and Replay

نویسنده

  • Purushottam Kulkarni
چکیده

Non-deterministic execution poses several challenges toward diagnosis—debugging, profiling and execution state mining, of software systems (user-level applications and operating systems). While several techniques using modified libraries, library wrappers, binary instrumentation and memory shadowing techniques exist, we aim to exploit the record and replay technique enabled by virtualization to provide a generalized diagnosis framework. Our solution, is motivated by the requirements of reproducibility of execution, no application source code modification and no or minimal binary instrumentation overheads—all of which are seldom provided by existing techniques. InSight , our diagnosis framework, consists of two stages—the first which records execution state of applications and the virtual machine and the second that replays and analyses the recorded execution. We implement InSight on the Linux kernel-based virtual machine (KVM) platform and as contributions implement an efficient record and replay substrate for KVM and a diagnosis framework using this substrate. This paper describes the design and implementation of these components and develops a set of diagnosis tools—potential deadlock detection, lock usage profiling and function profiling. We also present experiments to demonstrate correctness, the low overheads of InSight and the related diagnosis outcomes.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Record/Play in the Presence of Benign Data Races

In this article we present our experience with the integration of record/replay in the Jalape~ no virtual machine. The goal of record/replay is to be able to faithfully replay an application. Previous work in Jalape~ no focused on the replay of Java applications on uni-processors. Here we describe additional work done to obtain replay with low intrusion on multi-processor systems by doing `orde...

متن کامل

ORDER: Object centRic DEterministic Replay for Java

Deterministic replay systems, which record and replay non-deterministic events during program execution, have many applications such as bug diagnosis, intrusion analysis and fault tolerance. It is well understood how to replay native (e.g., C) programs on multi-processors, while there is little work for concurrent java applications on multicore. State-of-the-art work for Java either assumes dat...

متن کامل

Efficient Deterministic Replay of Multithreaded Programs Based on Efficient Tracking of Cross-Thread Dependences

Shared-memory parallel programs are inherently nondeterministic, making it difficult to diagnose rare bugs and to achieve deterministic execution, e.g., for replication. Existing multithreaded record & replay approaches have serious limitations such as relying on custom hardware or slowing programs by an order of magnitude. This paper introduces an approach for multithreaded record & replay bas...

متن کامل

Analysis of Virtual Machine Record and Replay for Trustworthy Computing

528 INTRODUCTION The goal of trustworthy computing is to build systems that do exactly what they are supposed to do and nothing else, but the complexity of modern software systems makes this a very difficult task. One way to address this challenge is to monitor execution at runtime. Essentially, a relatively simple monitor can analyze a more complex program as it executes to make sure some pred...

متن کامل

A Perturbation-Free Replay Platform for Cross-Optimized Multithreaded Applications

Development of multithreaded applications is particularly tricky because of their non-deterministic execution behaviors. Tools that support the debugging and performance tuning of such applications are needed. Key to the construction of such tools is the ability to repeat the nondeterministic execution behavior of a multithreaded application. A clean separation between the application and the s...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013